package com.ruiysoft.controller.wx.api;

import com.ruiysoft.controller.wx.dto.InnerWeChatACodeDto;
import com.ruiysoft.controller.wx.dto.OrderPayDto;
import com.ruiysoft.controller.wx.res.JsSignResponse;
import com.ruiysoft.pub.core.Result;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid;

/**
 * Created by 化增光 on 2018/12/1.
 */
@javax.annotation.Generated(value = "io.swagger.codegen.languages.SpringCodegen", date = "2018-11-17T17:07:23.898+08:00")

@Api(value = "innerWicroprogram", description = "the innerWicroprogram API")
public interface InnerWechatApi {

    @ApiOperation(value = "获取微信支付签名", nickname = "jssign", notes = "", response = JsSignResponse.class, tags={ "微信相关接口", })
    @ApiResponses(value = {
            @ApiResponse(code = 200, message = "successful operation", response = JsSignResponse.class) })
    @RequestMapping(value = "/inner/wechat/jssign",
            produces = { "application/json" },
            method = RequestMethod.POST)
    Result<JsSignResponse> jssign(@ApiParam(value = "", required = true) @Valid @RequestBody OrderPayDto order);

    @ApiOperation(value = "内部生成获取二维码", nickname = "wxacodeunlimit", notes = "", response = Void.class, tags={ "微信相关接口", })
    @ApiResponses(value = {
            @ApiResponse(code = 200, message = "successful operation", response = String.class) })
    @RequestMapping(value = "/inner/wxacodeunlimit",
            produces = { "application/json" },method = RequestMethod.POST)
    Result<String> wxacodeunlimit(HttpServletResponse response, @ApiParam(value = "", required = true) @Valid @RequestBody InnerWeChatACodeDto aCodeDto);
}
